#!/usr/bin/env python
"""
Django项目启动脚本
直接运行此文件即可启动Django开发服务器
"""
import os
import sys
import subprocess


def main():
    """启动Django开发服务器"""
    print("=" * 50)
    print("正在启动 AetherHarvest Django 项目...")
    print("=" * 50)
    print()

    # 检查数据库文件是否存在，如果不存在则执行迁移
    if not os.path.exists('db.sqlite3'):
        print("\n检测到数据库未初始化，正在执行数据库迁移...")
        subprocess.run([sys.executable, 'manage.py', 'migrate'], check=True)
        print("✓ 数据库迁移完成")
        print()

    print("正在启动开发服务器...")
    print("服务器地址: http://127.0.0.1:8000")
    print("按 Ctrl+C 停止服务器")
    print("=" * 50)
    print()

    # 启动Django开发服务器
    try:
        subprocess.run([sys.executable, 'manage.py', 'runserver'], check=True)
    except KeyboardInterrupt:
        print("\n\n服务器已停止")
        sys.exit(0)
    except subprocess.CalledProcessError as e:
        print(f"\n✗ 启动失败: {e}")
        sys.exit(1)


if __name__ == '__main__':
    main()